package com.innovations.inn.service;

import com.innovations.inn.domain.EnterpriseQualification;

import java.util.List;

/**
 * 企业资质Service接口
 *
 * @author dp
 * @date 2024-08-09
 */
public interface IEnterpriseQualificationService {
    /**
     * 查询企业资质
     *
     * @param enterpriseQualificationId 企业资质主键
     * @return 企业资质
     */
    EnterpriseQualification selectEnterpriseQualificationByEnterpriseQualificationId(Long enterpriseQualificationId);

    /**
     * 查询企业资质列表
     *
     * @param enterpriseQualification 企业资质
     * @return 企业资质集合
     */
    List<EnterpriseQualification> selectEnterpriseQualificationList(EnterpriseQualification enterpriseQualification);

    /**
     * 新增企业资质
     *
     * @param enterpriseQualification 企业资质
     * @return 结果
     */
    int insertEnterpriseQualification(EnterpriseQualification enterpriseQualification);

    /**
     * 修改企业资质
     *
     * @param enterpriseQualification 企业资质
     * @return 结果
     */
    int updateEnterpriseQualification(EnterpriseQualification enterpriseQualification);

    /**
     * 批量删除企业资质
     *
     * @param enterpriseQualificationIds 需要删除的企业资质主键集合
     * @return 结果
     */
    int deleteEnterpriseQualificationByEnterpriseQualificationIds(Long[] enterpriseQualificationIds);

    /**
     * 删除企业资质信息
     *
     * @param enterpriseQualificationId 企业资质主键
     * @return 结果
     */
    int deleteEnterpriseQualificationByEnterpriseQualificationId(Long enterpriseQualificationId);

    /**
     * 实体数据补全
     *
     * @param enterpriseQualification 实体
     * @param userId                  用户id
     * @param crateType               创建类型 1：新增 2：修改
     */
    void completeData(EnterpriseQualification enterpriseQualification, Long userId, Integer crateType);
}
